package com.example.card.transactionimplementation;

import com.example.card.CardConstant;
import com.example.card.implemention.ExpireNoDate;
import com.example.card.abstracttransactions.AddCardTransaction;
import com.example.card.domain.card.CardClassification;
import com.example.card.domain.card.ExpireDataLimit;
import com.example.card.implemention.BlueCardClassification;

import static com.example.card.CardConstant.*;

public class AddBlueCardTransaction extends AddCardTransaction {


    public AddBlueCardTransaction(int id, int balance) {
        super(id, balance);
    }

    @Override
    public  int getCardFunction() {
        return ENABLE_CHARGE | ENABLE_OIL_CODE | ENABLE_STORE_CODE | ENABLE_DEDUCT_COIN | ENABLE_DEDUCT_V_OIL | ENABLE_RED_PACKET;
    }

    @Override
    public  int getCardOilLabel() {
        return CardConstant.OIL_LABEL_ALL;
    }

    @Override
     public String getCardName() {
        return "蓝卡";
    }

    @Override
    public String getCardNoPrefix() {
        return "6002";
    }

    @Override
    public Integer getType() {
        return CARD_BLUE;
    }

    @Override
    public  CardClassification getCardClassification() {
        return new BlueCardClassification();
    }



    @Override
    public ExpireDataLimit getExpireDataLimit() {
        return new ExpireNoDate();
    }
}
